MultiProtocol Label Switching (MPLS) networks often include various paths that facilitate the flow of traffic from a source device to a destination device. In such MPLS networks, these paths may be identified and/or represented by a sequence of labels that correspond to different portions of the paths. For example, a packet may traverse a traditional MPLS network from a source device to a destination device. Along the way, the packet may arrive at an intermediary node that switches the packet's existing label for another label that corresponds to a subsequent hop within the LSP and then forwards the packet. Since labels are often switched in this way as packets traverse traditional MPLS networks, these paths may be referred to as Label-Switched Paths (LSPs).
LSPs may include and/or represent various nodes within a network. Each of these nodes may maintain and/or program both control plane and data plane state or data for the relevant LSPs. For example, a certain network node may represent a portion of 100,000 LSPs. In other words, 100,000 LSPs may include and/or pass through that network node.
In many traditional configurations, the number of data plane states maintained by a network node may be directly proportional to the number of LSPs that include that network node. In other words, such traditional configurations may require the data plane state to remain directly proportional to the control plane state. For example, in the event that a network node represents a portion of 100,000 LSPs, that network node may need to manage 100,000 different labels in the data plane by creating, updating, and/or deleting such labels when changes occur. As a result, the network node may be adding and/or deleting labels to the data plane on a nearly constant basis.
However, a newer MPLS technology may enable LSPs to share labels such that the number of labels needed to support the MPLS LSPs is reduced significantly. With this newer MPLS technology, rather than maintaining the same number of labels as the number of LSPs in the data plane, each network node may only need to maintain the same number of labels as the number of different next hops included in the LSPs.
As a specific example, the network node that represents a portion of 100,000 LSPs may interface with 10 other nodes that represent portions of those 100,000 LSPs. Rather than maintaining 100,000 labels in the forwarding table of the data plane, the network node may only need to maintain 10 different labels that correspond to the other nodes, thereby drastically reducing resource consumption and/or processing demands. As a result, the network node may be able to manage the labels in the forwarding table of the data plane without needing to perform updates so frequently.
In this new MPLS technology, an ingress node (i.e., the beginning node of an LSP) may facilitate transfer of a network packet along the LSP by imposing one or more labels on the packet. For example, the ingress node may insert, into the header of a packet, a label stack that includes at least a portion of the labels that describe hops within the packet's intended LSP. As the packet traverses the LSP, these labels may enable transit nodes within the LSP to appropriately route and/or transfer the packet such that the packet reaches the egress node (i.e., the final node) of the LSP.
Unfortunately, some network nodes utilizing this new MPLS technology may be unable to push and/or impose a sufficient number of labels onto a packet's label stack to enable the packet to be forwarded along the entirety of an LSP. For example, a typical network node may be limited to imposing and/or pushing 5 label stack entries. In the new MPLS technology, a label may be “popped” (e.g., deleted) from the packet's label stack after the packet reaches the node associated with the label. Accordingly, once the packet has traversed five hops, the node at which the packet currently resides may be unable to continue to forward the packet without additional knowledge of the packet's path. As a result, the packet may be unable to reach its intended destination.
The instant disclosure, therefore, identifies and addresses a need for additional apparatuses, systems, and methods for imposing label stack entries on MPLS packets.